<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta content="en" name="language">
	<title>GraphicsMagick ChangeLog - 2015</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
	<link media="screen" href="docutils-articles.css" type="text/css" rel="stylesheet">

</head>

<body>

<div class="banner">
<img src="images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
  <input type="hidden" name="domains" value="www.graphicsmagick.org" />
  <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>


<div class="navmenu">
<ul>
  <li><a href="index.html">Home</a></li>
  <li><a href="project.html">Project</a></li>
  <li><a href="download.html">Download</a></li>
  <li><a href="README.html">Install</a></li>
  <li><a href="Hg.html">Source</a></li>
  <li><a href="NEWS.html">News</a> </li>
  <li><a href="utilities.html">Utilities</a></li>
  <li><a href="programming.html">Programming</a></li>
  <li><a href="reference.html">Reference</a></li>
</ul>
</div>

<main id="graphicsmagick-changelog-2015">
<h1 class="title">GraphicsMagick ChangeLog - 2015</h1>
<p>2015-12-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>ttf: Update bundled freetype to release 2.6.2.</p></li>
<li><p>libxml: Update bundled libxml2 to release 2.9.3.</p></li>
</ul>
</blockquote>
<p>2015-11-28  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>webp: Updated bundled libwebp to release 0.4.4.</p></li>
<li><p>png: Updated bundled libpng to release 1.6.19.</p></li>
</ul>
</blockquote>
<p>2015-11-05  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (WriteOnePNGImage): Added &quot;volatile&quot; to
several declarations to stop &quot;might be clobbered&quot; warnings.</p></li>
</ul>
</blockquote>
<p>2015-11-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>NEWS.txt: Update NEWS for 1.3.23 release.</p></li>
</ul>
</blockquote>
<p>2015-11-06  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/command.c (IdentifyImageCommand): Fix problem that
identify with -format &quot;%A&quot; does not always report correct answer
due to insufficient analysis of image.  Fixes SourceForge bug #326
&quot;gm identify: transparency detection bug &quot;.</p></li>
</ul>
</blockquote>
<p>2015-11-05  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (WriteOnePNGImage): Restored a &quot;volatile&quot;
declaration that was accidentally deleted on 2015-11-03.</p></li>
</ul>
</blockquote>
<p>2015-11-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac: Add checks for 'ps2write' and 'eps2write' as
Ghostscript Postscript and Encapsulated Postscript
writers. Resolves issue reported to graphicsmagick-bugs mailing
list on 2015-11-01 entitled &quot;Failure to detect pswrite and
epswrite Ghostscript devices&quot;.</p></li>
</ul>
</blockquote>
<p>2015-11-03  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadRawProfile): Issue a warning instead of
an error when attempting to read a zero-length profile.</p></li>
</ul>
</blockquote>
<p>2015-11-01  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/studio.h (MagickSleep): Provide the macro 'MagickSleep'
to call a function which delays for one second.  No longer provide
a macro 'sleep' in WIN32 compiles.  Resolves issue reported to
graphicsmagick-bugs mailing list on 2005-11-01 entitled &quot;MinGW
build error when sleep re#defined as Sleep&quot;.</p></li>
</ul>
</blockquote>
<p>2015-10-30  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Magick++/demo/demos.tap: Add zoom test cases to test resize to
original dimensions, change height, and change width.</p></li>
<li><p>magick/resize.c (ScaleImage): Fix regression introduced in
1.3.22 release which results in pixel cache not open if the scale
width and height match the original.  Patch by Troy Patteson.
Fixes part of SourceForge bug #323 &quot;ScaleImage() issues in
v1.3.22&quot;.
(ScaleImage): Fix double free problem when scaled rows equals
original rows.  This regression was added in the 1.3.22 release
via changset 080b99bba574.  Based on patch by Troy Patteson.
Fixes remaining part SourceForge bug #323 &quot;ScaleImage() issues in
v1.3.22&quot;.</p></li>
</ul>
</blockquote>
<p>2015-10-24  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>www/Magick++/Image.rst (thumbnail): Paragraph heading fix.
Resolves SourceForge issue #321 &quot;find tiny error in
Magick++/Image.html document&quot;.</p></li>
</ul>
</blockquote>
<p>2015-10-06  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>docs/*.imdoc: Changed synopses in manpages to add &quot;gm &quot;
prefix to commands. Updated synopsis for &quot;convert&quot; to agree
with what's in the &quot;gm&quot; manpage.</p></li>
</ul>
</blockquote>
<p>2015-10-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac: Remove CFLAGS and LDFLAGS deduplication code.
Resolves SourceForge bug #320 OS X &quot;universal build failure&quot;.</p></li>
</ul>
</blockquote>
<p>2015-10-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>www/index.rst: Updated for 1.3.22 release.</p></li>
<li><p>NEWS.txt: Updated for 1.3.22 release.</p></li>
</ul>
</blockquote>
<p>2015-09-27  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>NEWS.txt: Brought up to date with changes thus far since last
release.</p></li>
<li><p>magick/blob.c (OpenBlob): Disable fflush() of read-only handle
under Microsoft Windows, which produced a spurious error status,
blocking file reads for Visual Studio 2015 on Windows 2012 server.
Problem was reported and diagnosed by Dirk Lemstra.</p></li>
</ul>
</blockquote>
<p>2015-09-19  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>tiff: Update bundled libtiff sources to 4.0.6 release.</p></li>
<li><p>magick/module.c (InitializeModuleSearchPath): Fix compilation
problem when UseInstalledMagick is not defined.</p></li>
</ul>
</blockquote>
<p>2015-09-13  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xpm.c: Static string/array allocations are now more
const.</p></li>
<li><p>coders/{ps.c, ps2.c, ps3.c}: Static string/array allocations are
now more const.</p></li>
<li><p>coders/palm.c: Palm static arrays should be 'const'.</p></li>
<li><p>coders/meta.c (jpeg_embed): Stop sharing writeable static string
'psheader'.
(tag_spec): The 'tags' static array should be all 'const'.</p></li>
<li><p>coders/jp2.c: Try to reduce the amount of non-const static data.</p></li>
<li><p>coders/dcm.c (dicom_info): Try to make dicom_info array more
'const'.</p></li>
<li><p>coders/dpx.c: Eliminate use of static buffer strings.</p></li>
<li><p>coders/png.c: Make MNG chunk id strings constant rather than
initialized data.</p></li>
<li><p>magick/render.c (DrawAffineImage): Fix problem that sometimes
output rows are skipped when using OpenMP.  Problem identification
and patch by Kevin Matzen.  Resolves SourceForge issue #316
&quot;-affine sometimes produces output with missing rows&quot;.</p></li>
</ul>
</blockquote>
<p>2015-08-30  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>tests/rwblob.tap: Add specific tests for BMP2 BMP3 subformats.</p></li>
<li><p>tests/rwfile.tap: Add specific tests for BMP2 BMP3 PS2 PS3
subformats.</p></li>
</ul>
</blockquote>
<p>2015-08-30  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/ImageMagick.rc Replace Imagemagick.ico by GraphicsMagick.ico</p></li>
<li><p>magick/Imagemagick.ico is no longer needed and not referenced anywhere.</p></li>
</ul>
</blockquote>
<p>2015-08-22  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>README.txt: Fix SourceForge bug 314 &quot;README: bad hg clone URL&quot;.</p></li>
<li><p>magick/module.c (GetModuleListForDirectory): Fix Coverity 107017
&quot;Copy into fixed size buffer&quot; and 107013 &quot;Overlapping buffer in
memory copy&quot;.
(UnloadModule): Fix SourceForge bug 312 &quot;uninitialized variable
&quot;name&quot; in UnloadModule&quot;.</p></li>
<li><p>coders/bmp.c (WriteBMPImage): Fix typo in fix on 2015-08-17.
Fixes Coverity 107014 &quot;Test should be assignment&quot;.</p></li>
<li><p>magick/module.c (OpenModules): Fix Coverity 107016 &quot;Resource
leak&quot;.
(GetModuleListForDirectory): Fix Coverity 107015 &quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-08-17  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/bmp.c (WriteBMPImage): Fix inverted alpha channel when
writing BGRA8888 format.  Problem was reported by 张铎 via the
graphicsmagick-help discussion list on 2015-08-17.</p></li>
</ul>
</blockquote>
<p>2015-08-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/attribute.c (GenerateEXIFAttribute): Verify that entry
pointer is within the metadata buffer in order to avoid buffer
overflow.  Resolution and patch by Federico Larumbe.</p></li>
<li><p>magick/profile.c (SetImageProfile): Avoid crash given NULL
profile pointer.  Resolution and patch by Federico Larumbe.</p></li>
</ul>
</blockquote>
<p>2015-08-09  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/attribute.c (GenerateEXIFAttribute): Fix logic problem
while validating EXIF GPS_OFFSET.  Problem reported by Federico
Larumbe.</p></li>
</ul>
</blockquote>
<p>2015-07-27  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/miff.c (ReadMIFFImage): Applied fix
(<a class="reference external" href="http://hg.code.sf.net/u/zacmorris/graphicsmagick/rev/edcc4c184b42">http://hg.code.sf.net/u/zacmorris/graphicsmagick/rev/edcc4c184b42</a>)
by Zac Morris to detect buffer overrun while reading zip
compressed data.
(ReadMIFFImage): Fixed some memory leaks which were occuring when
an exception was thrown from zip-compressed data reader.</p></li>
</ul>
</blockquote>
<p>2015-07-26  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (WritePTIFImage): Fix SourceForge issue #269
&quot;Convert creates SubfileType 0x2 instead of 0x1&quot;.  From looking at
the code, this is a regression since the time support for the page
subfile type was added (probably via changeset 11831
(037eef0f67f2) on 2007-08-17).</p></li>
</ul>
</blockquote>
<p>2015-07-19  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>dcraw/dcraw.c: Fixed bad define WIN32.</p></li>
</ul>
</blockquote>
<p>2015-07-18  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>NEWS.txt, www/Hg.rst, www/index.rst: Applied English bugs patch
by Amadu Jalloh.</p></li>
<li><p>dcraw/dcraw.c: Add a port replacement for strnlen().</p></li>
</ul>
</blockquote>
<p>2015-07-14  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>wand/magick_wand.h: The declaration for MagickGetImageGravity()
was missing.  Resolves SourceForge bug #308 magick_wand.h misses
declaration of MagickGetImageGravity.</p></li>
</ul>
</blockquote>
<p>2015-07-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>dcraw: Update bundled dcraw to release 9.26.0.</p></li>
<li><p>png: Updated bundled libpng to release 1.6.17.</p></li>
<li><p>lcms: Update bundled lcms2 to release 2.7.</p></li>
</ul>
</blockquote>
<p>2015-07-11  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>NEWS.txt: Brought up to date with changes thus far since last
release.</p></li>
<li><p>magick/version.h.in (MagickCopyright): Update most recent
copyright year.</p></li>
<li><p>magick/render.c (DrawAffineImage): Fix problem with negative x
offset.  Resolves SourceForge issue #306 &quot;gm fails to convert svg
to jpeg if svg has images with negative coordinates&quot;.</p></li>
<li><p>magick/pixel_cache.c (ReadCachePixels): Add checks for integer
overflows.</p></li>
</ul>
</blockquote>
<p>2015-07-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/module.c (ModuleAliases): Add a module alias for GRAYA.</p></li>
</ul>
</blockquote>
<p>2015-07-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/montage.c (MontageImages): Fix Coverity 101317 &quot;Resource
leak&quot;.</p></li>
<li><p>magick/blob.c: Limit the data size passed to the read/write
calls to the filesystem blocksize and make multiple calls if
required.</p></li>
<li><p>magick/pixel_cache.c: Limit the data size passed to the
read/write, pread/prwite calls and make multiple calls if
required.</p></li>
</ul>
</blockquote>
<p>2015-07-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/blob.c (WriteBlobFile): Properly handle short read. Read
data in units of filesystem block size.
(BlobToFile): Write data in units of filesystem block size.</p></li>
<li><p>patches: Added directory of patches which may be useful when
integrating new versions of 3rd-party programs or libraries into
the VisualMagick build.</p></li>
<li><p>libxml: Re-applied libxml changes which were used in prior
release.</p></li>
</ul>
</blockquote>
<p>2015-07-03  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>webp: Updated bundled libwebp to release 0.4.3.</p></li>
<li><p>ttf: Update bundled freetype to release 2.6.</p></li>
<li><p>libxml: Update bundled libxml2 to release 2.9.2.</p></li>
<li><p>tiff/VERSION: Update bundled libtiff to release 4.0.4.</p></li>
<li><p>magick/nt_base.h (HAVE_TIFFISCODECCONFIGURED): Enable use of
TIFFIsCODECConfigured in MSVC build.</p></li>
<li><p>coders/tiff.c: I am too lazy to modify VisualMagick configure so
it is possible to include jpeglib.h in tiff.c, so block out this
low-value code just for MSVC builds.</p></li>
</ul>
</blockquote>
<p>2015-06-28  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac, magick/profile.c: Removed support for lcms 1.X.
No one should be using a lesser version than lcms 2.0.</p></li>
</ul>
</blockquote>
<p>2015-06-23  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/blob.c (DisassociateBlob): Applied patch by Dirk Lemstra
to assure that the image blob is no longer shared with other
images when the image is written. This helps with thread safety.</p></li>
</ul>
</blockquote>
<p>2015-06-14  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/command.c: Add/fix utility usage messages for -box,
-convolve, -gravity, -linewidth, -list, -mattecolor, -render and
-shave.  Resolves SourceForge issue #302 &quot;MogrifyUsage prints
incomplete information &quot;.</p></li>
</ul>
</blockquote>
<p>2015-06-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (WriteTIFFImage): Include JPEG headers to obtain
its BITS_IN_JSAMPLE definition.  This is needed so we can know
what JPEG depth libtiff supports.</p></li>
<li><p>www/index.rst: Add mention of GraphicsMagick having zero defects
reported by Coverity.</p></li>
</ul>
</blockquote>
<p>2015-06-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Magick++/lib/STL.cpp (adaptiveThresholdImage): Add a new
constructor which accepts a 'double' offset value.  The previous
version of this constructor is deprecated and subject to removal
in the future.  The size of the class is enlarged to store a
'double' and so this is a break in the ABI when this class was
used.  Code using this class should be re-compiled.</p></li>
<li><p>Magick++/lib/Image.cpp (adaptiveThreshold): Add a new version of
this method which accepts a 'double' offset value.  The previous
version of the method is deprecated and subject to removal in the
future.  Problem was reported by Dirk Lemstra.</p></li>
</ul>
</blockquote>
<p>2015-05-27  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/gray.c (ReadGRAYImage): Based on feedback from Glenn,
return a gray image from the reader, even if a channelized format
specifier is given.</p></li>
</ul>
</blockquote>
<p>2015-05-26  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/gray.c (ReadGRAYImage): Fix read glitch caused by
incorrect memset(). Added missing break statement to switch.
Added more logging.
(RegisterGRAYImage): Register &quot;gray&quot; formats R, G, B, C, M, Y, K,
O such that they are not triggered by file extension.  It is
necessary to apply a magick prefix to the file name (or set image
magick in the API) in order to force using these formats.  This
avoids accidents in case the file extension was used for some
other purpose.</p></li>
</ul>
</blockquote>
<p>2015-05-25  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/gray.c: Added support for &quot;GRAYA&quot; format.  Format
specifiers &quot;R&quot;, &quot;G&quot;, &quot;B&quot;, &quot;A&quot;, &quot;C&quot;, &quot;M&quot;, and &quot;Y&quot; may now be used
to save and restore the associated channel using the same raw
format as &quot;GRAY&quot;.  These format specifiers were already supported
but did not appear to serve any useful function.</p></li>
</ul>
</blockquote>
<p>2015-05-24  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac: Improve handling of libxml2 dependencies.  Only
test for and use libwmflite.  Full-up libwmf is no longer used.</p></li>
<li><p>configure.ac: Deduplicate CFLAGS and LDFLAGS.</p></li>
</ul>
</blockquote>
<p>2015-05-23  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (WriteOnePNGImage): Eliminate a &quot;clobber&quot;
compilation warning.</p></li>
<li><p>coders/jpeg.c (WriteJPEGImage): Eliminate a &quot;clobber&quot;
compilation warning.</p></li>
<li><p>configure.ac: Don't compute libwmf2 and libxml2 linkage path
based on claimed installation prefix.  This is hoped to improve
configure reliability on multi-arch type systems.</p></li>
</ul>
</blockquote>
<p>2015-05-17  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac: Use the first -I, -L, and -l arguments produced by
freetype-config and don't produce arguments based on installation
prefix.  This is hoped to improve configure reliability on
multi-arch type systems.</p></li>
</ul>
</blockquote>
<p>2015-05-16  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/tempfile.c (AcquireTemporaryFileDescriptor): P_tmpdir is
not an environment variable.  Need to consider Windows environment
variables for Cygwin.</p></li>
<li><p>magick/random.c (InitializeMagickRandomKernel): For Microsoft
Windows, use CryptGenRandom() to salt the built-in random number
generator.</p></li>
</ul>
</blockquote>
<p>2015-05-13  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (MagickRandReentrant): Quiet Coverity 10092
&quot;Calling risky function&quot;.
(MagickRandNewSeed): Quiet Coverity 10093 &quot;Calling risky
function&quot;.</p></li>
<li><p>coders/tga.c (ReadTGAImage): Quiet Coverity 10201 &quot;Identical
code for different branches&quot;.</p></li>
<li><p>coders/pcx.c (ReadPCXImage): Quiet Coverity 10218 &quot;Identical
code for different branches&quot;.</p></li>
</ul>
</blockquote>
<p>2015-05-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (GetGeometry): Fix handling of area geometries
in the form &quot;5000000&#64;&quot;.  Resolves SourceForge issue #299 &quot;-resize
with &#64; and &gt; in geometry specification&quot;.</p></li>
</ul>
</blockquote>
<p>2015-05-09  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (WriteTIFFImage): Disable matte channel for
compression types which don't support it.  Resolves SourceForge
bug #297 &quot;GM distorts image using -transform&quot;.
(WriteTIFFImage): When type is Optimize, disable matte channel if
image is opaque.</p></li>
</ul>
</blockquote>
<p>2015-05-09  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>webp/src/utils/endian_inl.h: Fixed defect in intrinsic function
byteswap_ulong for Visual Studio less than 2005.</p></li>
</ul>
</blockquote>
<p>2015-05-08  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>VisualMagick/configure/system_page.cpp,
VisualMagick/configure/system_page.h: Suppress reloading .vcproj
when configuration type does not change.</p></li>
</ul>
</blockquote>
<p>2015-05-08  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>VisualMagick/configure/system_page.cpp,
VisualMagick/configure/system_page.h,
VisualMagick/configure/target_page.h: Ability to re-use already
given paths. It is highly frustrating to enter path for different
configurations again and again.</p></li>
</ul>
</blockquote>
<p>2015-05-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/vid.c (ReadVIDImage): Fix use of uninitialized variable
reported by MSVC 2003 (but not GCC, Clang, or Coverity).</p></li>
</ul>
</blockquote>
<p>2015-05-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/miff.c (ReadMIFFImage): Fix possible leak of profiles in
error path.</p></li>
<li><p>coders/mpc.c (ReadMPCImage): Fix memory leak of values
allocation.
(ReadMPCImage): Fix possible leak of profiles in error path. Fixes
Coverity 80697 &quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-05-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/miff.c (ReadMIFFImage): Fix memory leak of values
allocation.</p></li>
</ul>
</blockquote>
<p>2015-05-03  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/dpx.c (ReadDPXImage): Hopefully quiet Coverity 10305
&quot;Untrusted loop bound&quot;.</p></li>
<li><p>coders/tga.c (ReadTGAImage): Hopefully quiet Coverity 53418
&quot;Untrusted loop bound&quot;.</p></li>
<li><p>magick/tempfile.c (AcquireTemporaryFileDescriptor): Eliminate
all use of operating system provided temporary file allocation
functions (all apparently flawed in one way or another) and rely
exclusively on our own implementation.</p></li>
<li><p>magick/constitute.c (ConstituteImage): Quiet Coverity 53399
&quot;Logically dead code&quot;.</p></li>
<li><p>coders/webp.c (ReadWEBPImage): Quiet Coverity 53400 &quot;Logically dead
code&quot;.</p></li>
<li><p>coders/miff.c (WriteRunlengthPacket): More work to quiet
Coverity 10186 and 10214 &quot;Missing break in switch&quot;.</p></li>
</ul>
</blockquote>
<p>2015-05-02  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/tempfile.c (AcquireTemporaryFileDescriptor): Thoroughly
vet temporary file path.  Might quiet Coverity 64613 &quot;Use of
untrusted string value&quot;.</p></li>
<li><p>wand/magick_compat.c (ParseGeometry): Another try at quieting
Coverity 10248 &quot;Copy into fixed size buffer&quot; and 10078
&quot;Overlapping buffer in memory copy&quot; in this dead code.</p></li>
<li><p>magick/tempfile.c (AcquireTemporaryFileDescriptor): Remove
unneeded, almost certainly never used, and potentially insecure
use of mkstemp().  Will quiet Coverity 10315 &quot;Insecure temporary
file&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-30  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>configure.ac: Keep Ghostscript gibberish from appearing in
Configure output.</p></li>
<li><p>coders/miff.c (WriteRunlengthPacket): Quiet Coverity 10186 and
10214 &quot;Missing break in switch&quot;.</p></li>
<li><p>magick/pixel_cache.c (GetCacheInfo): Quiet Coverity 10208 &quot;Data
race condition&quot;.</p></li>
<li><p>magick/blob.c (CloneBlobInfo): Quiet Coverity 10188 &quot;Data race
condition&quot;.
(GetBlobInfo): Quiet Coverity 10191 &quot;Data race condition&quot;.</p></li>
<li><p>magick/image.c (AllocateImage): Quiet Coverity 10196 &quot;Data race
condition&quot;.
(CloneImage): Quiet Coverity 10206 &quot;Data race condition&quot;.</p></li>
<li><p>magick/map.c (MagickMapAllocateMap): Quiet Coverity 10192, 10193
and 10228 &quot;Data race condition&quot;.</p></li>
<li><p>configure.ac: Use an algorithm to try to discover the best value
for GSCMYKDevice.</p></li>
<li><p>VisualMagick/bin/delegates.mgk: Recipe for 'gs-cmyk' contained a
typo which breaks using '-type ColorSeparation'.</p></li>
<li><p>coders/pwp.c (ReadPWPImage): Fix Coverity CID 64491 &quot;Integer
handling issues&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-29  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xcf.c (load_tile_rle): Quiet Coverity 10259 &quot;Untrusted
loop bound&quot;.</p></li>
<li><p>coders/sct.c (ReadSCTImage): Quiet Coverity 10285 &quot;Untrusted
loop bound&quot;.</p></li>
<li><p>coders/pwp.c (ReadPWPImage): Quiet Coverity 10299 &quot;Untrusted
loop bound&quot;.</p></li>
<li><p>coders/pcd.c (ReadPCDImage): Quiet Coverity 10301 &quot;Untrusted
loop bound&quot;.</p></li>
<li><p>coders/tga.c (ReadTGAImage): Quiet Coverity 53418 &quot;Untrusted
loop bound&quot;.</p></li>
<li><p>wand/magick_compat.c (ParseGeometry): Fix overlap strcpy() in
dead code.  Quiets Coverity 10078 &quot;Overlapping buffer in memory
copy&quot; and 10248 &quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>magick/segment.c (Classify): Fix Coverity 64317 &quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-28  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xcf.c (ReadXCFImage): Fix Coverity 64064 &quot;Resource leak&quot;.</p></li>
<li><p>coders/txt.c (ReadTXTImage): Fix Coverity 64061 &quot;Resource leak&quot;.</p></li>
<li><p>coders/rla.c (ReadRLAImage): Fix Coverity 64063 &quot;Resource leak&quot;.</p></li>
<li><p>coders/dib.c (ReadDIBImage): Fix Coverity 64057 Resource leak&quot;.</p></li>
<li><p>magick/segment.c (Classify): Fix Coverity 64056 &quot;Resource leak&quot;.</p></li>
<li><p>magick/resize.c (SampleImage): Fix Coverity 64053, 64054, and
64062 &quot;Resource leak&quot;.</p></li>
<li><p>magick/render.c (TraceStrokePolygon): Fix Coverity 64055, 64059,
and 64060 &quot;Resource leak&quot;.</p></li>
<li><p>magick/magick.c (ListModuleMap): Quiet Coverity 64058 &quot;Resource
leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-28  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/dpx.c: Fix Coverity 10305 &quot;Untrusted loop bound&quot;.</p></li>
<li><p>coders/cineon.c: Fix Coverity 10310 &quot;Untrusted loop bound&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-27  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/memory.c: All use of user-provided allocation functions
is done via MagickFree(), MagickMalloc(), and MagickRealloc().</p></li>
</ul>
</blockquote>
<p>2015-04-26  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/colormap.c (MagickConstrainColormapIndex): For out of
range condition, specifically return 0 rather than setting index
to zero, and then returning index.</p></li>
<li><p>coders/pcx.c (ReadPCXImage): Fix Coverity 10197 &quot;Negative loop
bound&quot;.</p></li>
<li><p>coders/map.c (ReadMAPImage): Allocate pixels after return case
for 'ping' mode.
(ReadMAPImage): Fix problem added in last commit due to multiple
uses of 'packet_size'.</p></li>
<li><p>magick/floats.c (_Gm_convert_fp16_to_fp32)
(_Gm_convert_fp24_to_fp32): Fix Coverity 10094 &quot;Logically dead
code&quot;.</p></li>
<li><p>coders/pcx.c (ReadPCXImage): Fix Coverity 10197 &quot;Negative loop
bound&quot;.</p></li>
<li><p>coders/wpg.c (UnpackWPG2Raster): Always test for EOF from
ReadBlobByte().  Should fix Coverity 10205 &quot;Negative loop bound&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-25  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/pcx.c (ReadPCXImage): Add some more integer-overflow
safety to computations.  Add some casts.</p></li>
<li><p>coders/meta.c (formatIPTC): Fix Coverity 10221 &quot;Infinite loop&quot;.</p></li>
<li><p>magick/attribute.c (GenerateEXIFAttribute): Fix Coverity 10320
&quot;Untrusted array index read&quot; and &quot;Untrusted loop bound&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-24  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/gif.c (ReadGIFImage): Attempt to fix Coverity issue
10284 by using &quot;opacity = (header[3] &amp; 0xff)&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-23  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/blob.c (ReadBlobMSBLong, ReadBlobLSBLong): Attempt
to fix various &quot;tainted&quot; or &quot;untrusted&quot; variables
by masking off all but the lower 32 bits returned.</p></li>
</ul>
</blockquote>
<p>2015-04-23  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xcf.c (ReadXCFImage): Fix Coverity 10216 &quot;Integer
overflowed argument&quot;.</p></li>
<li><p>magick/transform.c (FlipImage): Fix Coverity 61461 &quot;Division or
modulo by zero&quot;.</p></li>
<li><p>coders/gif.c: Protect against integer overflow in array size
calculations.  Used unsigned type for colormap index.</p></li>
</ul>
</blockquote>
<p>2015-04-22  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/map.c (ReadMAPImage): Maybe quiet Coverity 10326
&quot;Untrusted pointer read&quot;.</p></li>
<li><p>magick/utility.c (GlobExpression): See if testing for null
terminating character quiets Coverity 10246 &quot;Untrusted value as
argument&quot;.</p></li>
<li><p>magick/transform.c (FlipImage): Possibly quiet case #4 of
Coverity 10311 &quot;Untrusted value as argument&quot;.</p></li>
<li><p>magick/utility.c (Base64Encode): Quiet Coverity 10296 and 10272
&quot;Use of untrusted scalar value&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-22  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/blob.c (ReadBlobMSBShort, ReadBlobLSBShort): Attempt
to fix various &quot;tainted&quot; or &quot;untrusted&quot; variables, e.g., in
coders/gif.c and coders/sgi.c by masking off all but the lower
16 bits returned.</p></li>
</ul>
</blockquote>
<p>2015-04-21  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tim.c (ReadTIMImage): Make TIM reader more robust against
EOF.</p></li>
<li><p>coders/sct.c (ReadSCTImage): Make SCT reader more robust against
EOF.</p></li>
<li><p>coders/pwp.c (ReadPWPImage): Test loop for EOF.</p></li>
<li><p>coders/otb.c (ReadOTBImage): Make error reporting a bit more
robust.</p></li>
<li><p>coders/jnx.c (ExtractTileJPG): Add some EOF checks.</p></li>
<li><p>coders/cut.c (ReadCUTImage): Limit width/height to range of
signed integer.</p></li>
<li><p>tests/rwfile.tap: Add a R/W file test for ART.</p></li>
<li><p>tests/rwblob.tap: Add a R/W blob test for ART.</p></li>
<li><p>coders/art.c (ReadARTImage): Improve error checking.</p></li>
</ul>
</blockquote>
<p>2015-04-20  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/sun.c (ReadSUNImage): Try to quench Coverity 10280
&quot;Untrusted loop bound&quot;.</p></li>
<li><p>coders/mpc.c (ReadMPCImage): Port MIFF header reading fixes.</p></li>
</ul>
</blockquote>
<p>2015-04-19  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/miff.c (ReadMIFFImage): MIFF reader failed to read some
MIFF headers properly.  Fixes SourceForge issue #298 &quot;invalid next
size (normal)/memory corruption&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-18  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadMNGImage): Fix Coverity 55862 &quot;Resource leak&quot;
and quiet Coverity 55825, 55826, and 55827 &quot;Data race condition&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-18  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (GetToken): Fix an overlapping strlcpy() which
caused a crash in pedantic strlcpy() implementations while parsing
a SVG-style URL from text.  Several other issues remain.</p></li>
</ul>
</blockquote>
<p>2015-04-16  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/command.c (ParseUnixCommandLine): Fix Coverity 59256
&quot;Unused value&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-15  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/display.c (MagickXROIImage): Fix Coverity 10179 &quot;Missing
break in switch&quot;.
(MagickXCropImage): Fix Coverity 10211 &quot;Missing break in switch&quot;.</p></li>
<li><p>magick/utility.c (Base64Decode): Fix Coverity 10203 &quot;Missing
break in switch&quot;.
(Tokenizer): Quench Coverity 10182 &quot;Missing break in switch&quot;.  Not
believed to be an actual problem.</p></li>
<li><p>magick/command.c (ParseUnixCommandLine): Fix Coverity 10174 and
10178 &quot;Missing break in switch&quot;.
(ProcessBatchOptions): Fix Coverity 10180 &quot;Missing break in
switch&quot;.
(ParseWindowsCommandLine): Fix Coverity 10220 &quot;Missing break in
switch&quot;.</p></li>
<li><p>coders/xwd.c (ReadXWDImage): Fix Coverity 10095 &quot;Division or
modulo by zero&quot;.  3rd try.</p></li>
</ul>
</blockquote>
<p>2015-04-14  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOneJNGImage): Fix Coverity 55829 and 55846
&quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-13  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
55831 &quot;Resource leak&quot;.  2nd try.</p></li>
<li><p>coders/vid.c (ReadVIDImage): Fix Coverity 55868 and 55874
&quot;Resource leak&quot;.  2nd try.</p></li>
</ul>
</blockquote>
<p>2015-04-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/psd.c (ReadPSDImage): Fix Coverity 55855 &quot;Resource
leak&quot;. 2nd try.</p></li>
<li><p>coders/pict.c (PictPixmapOp): Fix Coverity 55875 and 55883
&quot;Resource leak&quot;. 2nd try.</p></li>
<li><p>coders/pcx.c (WritePCXImage): Fix Coverity 55877 &quot;Resource
leak&quot;. 2nd try.</p></li>
<li><p>coders/meta.c (format8BIM): Fix Coverity 55842 &quot;Resource
leak&quot;. 2nd try.</p></li>
<li><p>coders/mat.c (WriteMATLABImage): Fix Coverity 55850 &quot;Resource
leak&quot;. 2nd try.</p></li>
<li><p>coders/dpx.c (ReadDPXImage): Fix Coverity 55878 &quot;Resource leak&quot;.
2nd try.</p></li>
<li><p>coders/preview.c (WritePreviewImage): Fix Coverity 55988
&quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-12  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOneJNGImage): Avoid some memory leaks
newly reported by Coverity (work in progress)</p></li>
</ul>
</blockquote>
<p>2015-04-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/resize.c (ScaleImage): Fix Coverity 55824 &quot;Division or
modulo by float zero&quot;.</p></li>
<li><p>magick/annotate.c (AnnotateImage): Fix Coverity 55863
&quot;Uninitialized scalar variable&quot;.</p></li>
<li><p>wand/magick_wand.c (MagickDrawImage): Fix Coverity 55828
&quot;Resource leak&quot;.
(MagickMontageImage): Fix Coverity 55835 &quot;Resource leak&quot;.</p></li>
<li><p>wand/drawing_wand.c (DrawComposite): Fix Coverity 55849
&quot;Resource leak&quot;.</p></li>
<li><p>magick/widget.c (MagickXColorBrowserWidget): Fix Coverity 55854
&quot;Resource leak&quot;.</p></li>
<li><p>magick/resize.c (ScaleImage): Fix Coverity 55841, 55853, 55858,
and 55860 &quot;Resource leak&quot;.</p></li>
<li><p>magick/render.c (ConvertPathToPolygon): Fix Coverity 55836
&quot;Resource leak&quot;.
(DrawDashPolygon): Fix Coverity 55837 &quot;Resource leak&quot;.</p></li>
<li><p>magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
55831 &quot;Resource leak&quot;.</p></li>
<li><p>magick/paint.c (ColorFloodfillImage): Fix Coverity 55886
&quot;Resource leak&quot;.</p></li>
<li><p>magick/map.c (MagickMapAddEntry): Possibly silence 55844
&quot;Resource leak&quot;.</p></li>
<li><p>magick/image.c (CloneImage): Fix Coverity 55833 &quot;Resource leak&quot;.</p></li>
<li><p>magick/effect.c (BlurImage): Fix Coverity 55851 &quot;Resource leak&quot;.</p></li>
<li><p>magick/display.c (MagickXAnnotateEditImage): Fix Coverity 55830
&quot;Resource leak&quot;.
(MagickXVisualDirectoryImage): Fix Coverity 55894 &quot;Resource leak&quot;.</p></li>
<li><p>magick/constitute.c (ReadImages): Fix Coverity 55834 &quot;Resource
leak&quot;.
(ReadInlineImage): Fix Coverity 55843 &quot;Resource leak&quot;.</p></li>
<li><p>magick/compress.c (HuffmanEncode2Image): Fix Coverity 55839
&quot;Resource leak&quot;.
(HuffmanDecodeImage): Fix Coverity 55859 &quot;Resource leak&quot;.</p></li>
<li><p>magick/color.c (GetColorHistogram): Fix Coverity 55845 &quot;Resource
leak&quot;.
(ComputeCubeInfo): Fix Coverity 55857 &quot;Resource leak&quot;.</p></li>
<li><p>coders/yuv.c (ReadYUVImage): Fix Coverity 55890 &quot;Resource leak&quot;.</p></li>
<li><p>coders/wpg.c (UnpackWPG2Raster): Fix Coverity 55832 and 55848
&quot;Resource leak&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-11  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/vid.c (ReadVIDImage): Fix Coverity 55868 &quot;Resource leak&quot;
(ReadVIDImage): Fix Coverity 55874 &quot;Resource leak&quot;.</p></li>
<li><p>coders/txt.c (ReadTXTImage): Fix Coverity 55866 &quot;Resource leak&quot;.</p></li>
<li><p>coders/topol.c (ReadTOPOLImage): Fix Coverity 55865 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/sgi.c (WriteSGIImage): Fix Coverity 55891 &quot;Resource leak&quot;.</p></li>
<li><p>coders/psd.c (ReadPSDImage): Fix Coverity 55855 &quot;Resource leak&quot;.</p></li>
<li><p>coders/pict.c (WritePICTImage): Fix Coverity 55867, 55875, 55883
&quot;Resource leak&quot;.  Fix Coverity 55892 &quot;Resource leak&quot;.</p></li>
<li><p>coders/pdb.c (ReadPDBImage): Fix Coverity 55840, 55856, and
55885 &quot;Resource leak&quot;.</p></li>
<li><p>coders/pcx.c (WritePCXImage): Fix Coverity 55877 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/mvg.c (ReadMVGImage): Fix Coverity 55873 &quot;Resource leak&quot;.</p></li>
<li><p>coders/mpeg.c (WriteMPEGImage): Fix Coverity 55880 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/miff.c (WriteMIFFImage): Fix Coverity 55864 &quot;Resource
leak&quot;.
(WriteMIFFImage): Fix Coverity 55872 &quot;Resource leak&quot;.</p></li>
<li><p>coders/meta.c (formatIPTCfromBuffer): Fix Coverity 55838
&quot;Resource leak&quot;.
(format8BIM): Fix Coverity 55842 and 55852 &quot;Resource leak&quot;.
(formatIPTC): Fix Coverity 5882 &quot;Resource leak&quot;.</p></li>
<li><p>coders/mat.c (ReadMATImage): Fix Coverity 55850 &quot;Resource leak&quot;.</p></li>
<li><p>coders/map.c (ReadMAPImage): Fix Coverity 55876 &quot;Resource leak&quot;.</p></li>
<li><p>coders/logo.c (ReadLOGOImage): Fix Coverity 55870 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/label.c (ReadLABELImage): Fix Coverity 55869 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/icon.c (ReadIconImage): Fix Coverity 55887 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/fits.c (WriteFITSImage): Fix Coverity 55884 &quot;Resource
leak&quot;.</p></li>
<li><p>coders/dpx.c (WriteDPXImage): Fix Coverity 55861 &quot;Resource
leak&quot;.
(ReadDPXImage): Fix Coverity 55878 &quot;Resource leak&quot;.
(ReadDPXImage): Fix Coverity 55879 &quot;Resource leak&quot;.</p></li>
<li><p>coders/dib.c (WriteDIBImage): Fix Coverity 55881 &quot;Resource
leak&quot;.
(WriteDIBImage): Fix Coverity 55895 &quot;Resource leak&quot;.</p></li>
<li><p>coders/cut.c (ReadCUTImage): Fix Coverity 55893 &quot;Resource leak&quot;.</p></li>
<li><p>coders/caption.c (ReadCAPTIONImage): Fix Coverity 55888
&quot;Resource leak&quot;.
(ReadCAPTIONImage): Fix Coverity 55889 &quot;Resource leak&quot;.
(ReadCAPTIONImage): Fix Coverity 55896 &quot;Resource leak&quot;.</p></li>
<li><p>magick/annotate.c (RenderX11): Silence Coverity 10106 &quot;Logically
dead code&quot;.</p></li>
<li><p>coders/xcf.c: Silence Coverity 10224, 10233, and 10236 &quot;Improper
use of negative value&quot;.</p></li>
<li><p>coders/mat.c (ReadMATImage): Silence Coverity 10175 &quot;Improper
use of negative value&quot;</p></li>
<li><p>coders/tga.c (ReadTGAImage): Silence Coverity 10088 &quot;Operands
don't affect result&quot;.</p></li>
<li><p>magick/annotate.c (RenderFreetype): Silence Coverity 14396 and
44755 &quot;Unused value&quot;.</p></li>
<li><p>coders/wpg.c (LoadWPG2Flags): Silence Coverity 10273 and 10253
&quot;Unused value&quot;.</p></li>
<li><p>magick/montage.c (MontageImages): Silence Coverity 10255 &quot;Unused
value&quot;.
(MontageImages): Silence Coverity 10264 &quot;Unused value&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-09  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOneJNGImage): Avoid using a NULL alpha_image
or color_image. (ReadJNGImage): Removed an extraneous CloseBlob().</p></li>
</ul>
</blockquote>
<p>2015-04-08  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (MagickCreateDirectoryPath): Silence Coverity
10098 &quot;Logically dead code&quot;.</p></li>
<li><p>magick/resource.c (InitializeMagickResources): Silence Coverity
10101 &quot;Logically dead code&quot;.</p></li>
<li><p>magick/magick.c (MagickSignalHandlerMessage): Fix Coverity 44725
&quot;Logically dead code&quot;.</p></li>
<li><p>magick/log.c (DestroyLogInfo): Silence Coverity 53659 and 53661
&quot;Data race condition&quot;.
(ReadLogConfigureFile): Silence Coverity 53660 &quot;Data race
condition&quot;.</p></li>
<li><p>magick/effect.c (DespeckleImage): Fix error handling issue
caused by shadowed variable.  Fixes Coverity 10099 &quot;Logically dead
code&quot;.</p></li>
<li><p>magick/command.c (TimeImageCommand): Fix Coverity 10097
&quot;Logically dead code&quot;.</p></li>
<li><p>magick/attribute.c (ReadMSBLong): Hopefully silence Coverity
10276 &quot;Unintended sign extension&quot;.</p></li>
<li><p>coders/sgi.c (ReadSGIImage, WriteSGIImage): Fix Coverity 10243,
10244, 10247, 10254, and 10294 &quot;Unintended sign extension&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/xwindow.c (MagickXMakeImage): Quiet Coverity 10282
&quot;Unused value&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-06  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (WriteTIFFImage): Another change targeting
Coverity 44742 and 44746 &quot;Unintended sign extension&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/render.c (TracePath): Fix Coverity 10258 &quot;Uninitialized
scalar variable&quot;.</p></li>
<li><p>magick/widget.c (MagickXFontBrowserWidget): Fix Coverity 10323
&quot;Sizeof not portable&quot;.  2nd try.</p></li>
<li><p>coders/xwd.c (ReadXWDImage): Fix Coverity 10095, 10100, 10104
&quot;Division or modulo by zero&quot;.  2nd try.</p></li>
<li><p>magick/analyze.c (GetImageCharacteristics): Fix Coverity 10096
&quot;Logically dead code&quot;.</p></li>
<li><p>coders/yuv.c (ReadYUVImage): Fix Coverity 10260 &quot;Structurally
dead code&quot;.</p></li>
<li><p>coders/xcf.c (ReadXCFImage): Fix Coverity 10226 &quot;Missing break
in switch&quot;.</p></li>
<li><p>coders/tim.c (ReadTIMImage): Fix Coverity 10249 &quot;Unused value&quot;.</p></li>
<li><p>coders/tiff.c (CompressionSupported): Fix Coverity 44723
&quot;Logically dead code&quot;.
(WriteTIFFImage): Fix Coverity 44742 and 44746 &quot;Unintended sign
extension&quot;.</p></li>
<li><p>coders/ps3.c (WritePS3Image): Validate results from TellBlob()
and SeekBlob().  Should quiet Coverity 10198 &quot;Improper use of
negative value&quot;.</p></li>
<li><p>coders/ps2.c (WritePS2Image): Validate results from TellBlob()
and SeekBlob().  Should quiet Coverity 10230 &quot;Improper use of
negative value&quot;.</p></li>
<li><p>coders/mpeg.c (WriteMPEGImage): Quiet Coverity 10176 &quot;Missing
break in switch&quot;.</p></li>
<li><p>coders/map.c (WriteMAPImage): Make MAP reader/writer more
robust.  May quiet 10326 &quot;Untrusted pointer read&quot;.</p></li>
<li><p>coders/locale.c (ReadLOCALEImage): Quiet Coverity 10108
&quot;Logically dead code&quot;.</p></li>
<li><p>coders/rle.c: Make URT RLE reader more robust.  Should quiet
Coverity CID 10070 &quot;Bad bit shift operation&quot;, as well as 10235
&quot;Improper use of negative value&quot;.</p></li>
</ul>
</blockquote>
<p>2015-04-04  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (WriteOneJNGImage): Quiet Coverity CID issue 14370,
&quot;Unused value&quot; (status was ignored).</p></li>
<li><p>coders/png.c (ReadOneJNGImage): Quiet Coverity CID issue 44724,
&quot;Logically dead code&quot; (skip_to_iend can't be true).</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Attempt to quiet Coverity
CID 10232 &quot;Missing unlock&quot;, by using png_error() instead of
throwing an exception.</p></li>
</ul>
</blockquote>
<p>2015-04-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xwd.c (ReadXWDImage): Fix Coverity 10104 &quot;Division or
modulo by zero&quot;.</p></li>
<li><p>magick/resize.c (ResizeImage): Fix Coverity 53404 &quot;Division or
modulo by zero&quot;.</p></li>
<li><p>coders/ps3.c (WritePS3MaskImage): Fix Coverity 53415 &quot;Improper
use of negative value&quot;.</p></li>
<li><p>coders/meta.c (parse8BIM): Fix Coverity 53413 &quot;Improper use of
negative value&quot;.
(parse8BIMW): Fix Coverity 53414 &quot;Improper use of negative value&quot;.</p></li>
<li><p>magick/utility.c (GetMagickGeometry): Fix Coverity 53403 and
53405 &quot;Division or modulo by float zero&quot;.
(GetPathComponent): Fix Coverity 53417 &quot;Wrong sizeof argument.</p></li>
<li><p>magick/quantize.c (GrayscalePseudoClassImage): Fix Coverity
10256 &quot;Wrong sizeof argument&quot;.</p></li>
<li><p>magick/image.c (ResetImagePage): Fix Coverity 53401 &quot;Division or
modulo by float zero&quot; and 53402 &quot;Division or modulo by float
zero&quot;.</p></li>
<li><p>coders/histogram.c (WriteHISTOGRAMImage): Silence Coverity 10107
&quot;Division or modulo by float zero&quot;.  2nd try.</p></li>
<li><p>magick/xwindow.c (MagickXImportImage): Silence Coverity 10207
&quot;Array compared against 0&quot;.</p></li>
<li><p>magick/widget.c (MagickXColorBrowserWidget): Silence Coverity
53406 &quot;Identical code for different branches&quot;.
(MagickXListBrowserWidget): Silence Coverity 53407 &quot;Identical code
for different branches&quot;.</p></li>
<li><p>magick/animate.c (MagickXMagickCommand): Silence Coverity 53410
&quot;Identical code for different branches&quot;.</p></li>
<li><p>coders/rgb.c (WriteRGBImage): Silence Coverity 53409 &quot;Identical
code for different branches&quot;.</p></li>
<li><p>coders/cmyk.c (WriteCMYKImage): Silence Coverity 53408
&quot;Identical code for different branches&quot;.</p></li>
<li><p>magick/xwindow.c (MagickXMakeImage): Silence Coverity 44727
&quot;Dereference after null check&quot;.  2nd try.</p></li>
<li><p>magick/utility.c (EscapeString): Silence Coverity 53416
&quot;Dereference before null check&quot;.</p></li>
<li><p>coders/gif.c (WriteGIFImage): Fix Coverity 10219 &quot;Dereference
null return value&quot;.</p></li>
<li><p>magick/log.c (InitializeLogInfo): Hopefully silence Coverity
53411 and 53412 &quot;Data race condition&quot;.</p></li>
<li><p>coders/cineon.c (AttributeToString): Silence Coverity 10079
&quot;Buffer not null terminated&quot;.  2nd try.  The buffer is not
required to be null terminated!</p></li>
<li><p>coders/pict.c (ReadPICTImage): 10171 &quot;Resource leak&quot;.  2nd try.</p></li>
<li><p>coders/wmf.c (util_set_brush): Silence Coverity 44739
&quot;Out-of-bounds access&quot;.  2nd try.</p></li>
</ul>
</blockquote>
<p>2015-03-29  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/log.c (SetLogEventMask): Silence Coverity 10069 &quot;Value
not atomically updated&quot;.  Logging initialization is done
single-threaded entirely in InitializeLogInfo() now.</p></li>
</ul>
</blockquote>
<p>2015-03-28  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOnePNGImage): Attempt to quiet Coverity
44734 &quot;Data race condition&quot; by freeing mng_info-&gt;png_pixels
and mng_info-&gt;quantum_scanline separately from MngInfoFreeStruct.</p></li>
</ul>
</blockquote>
<p>2015-03-28  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/widget.c (XEditText): Silence Coverity 10072 &quot;Overlapping
buffer in memory copy&quot;</p></li>
<li><p>coders/locale.c (ReadConfigureFile): Silence Coverity 10075
&quot;Overlapping buffer in memory copy&quot;.</p></li>
<li><p>magick/xwindow.c (MagickXMakeWindow): Silence Coverity 10076
&quot;Overlapping buffer in memory copy&quot;.</p></li>
<li><p>coders/dcm.c (funcDCM_TransferSyntax): Silence Coverity 10083
&quot;Unchecked return value&quot;.</p></li>
<li><p>magick/static.c (ExecuteStaticModuleProcess): Silence Coverity
10082 &quot;Unchecked return value&quot;.</p></li>
<li><p>coders/cals.c (ReadCALSImage): Silence Coverity 10086 &quot;Unchecked
return value from library&quot;.
(ReadCALSImage): Silence Coverity 10085 &quot;Unchecked return value&quot;.
(ReadCALSImage): Silence Coverity 10084 &quot;Unchecked return value
from library&quot;.</p></li>
<li><p>magick/enhance.c (ModulateImage): Silence Coverity 10087
&quot;Unchecked return value&quot;.</p></li>
</ul>
</blockquote>
<p>2014-03-24  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/wpg.c More paranoa in checking ReadBlobByte() negative return.</p></li>
</ul>
</blockquote>
<p>2015-03-23  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/attribute.c (Generate8BIMAttribute): Silence Coverity
10195 &quot;Argument cannot be negative&quot;.</p></li>
<li><p>Magick++/lib/Image.cpp (syncPixels): Silence Coverity 44722
&quot;Unchecked return value&quot;.
(fontTypeMetrics): Silence Coverity 44721 &quot;Unchecked return
value&quot;.</p></li>
<li><p>magick/render.c (ConvertPathToPolygon): Silence Coverity 10120
&quot;Dereference after null check&quot;.</p></li>
<li><p>magick/effect.c (EmbossImage): Silence Coverity 10114
&quot;Dereference after null check&quot;.
(AdaptiveThresholdImage): Silence Coverity 10118 &quot;Explicit null
dereferenced&quot;.</p></li>
<li><p>coders/msl.c (MSLPushImage): Silence Coverity 10128 &quot;Dereference
after null check&quot;.</p></li>
<li><p>magick/render.c (DrawPolygonPrimitive): Silence Coverity 10136
&quot;Dereference after null check&quot;.</p></li>
<li><p>wand/drawing_wand.c (DrawSetStrokeDashArray): Silence Coverity
10117 &quot;Dereference after null check&quot;.</p></li>
<li><p>magick/draw.c (DrawSetStrokeDashArray): Silence Coverity 10150
&quot;Dereference after null check&quot;.</p></li>
<li><p>wand/drawing_wand.c (DrawPushGraphicContext): Silence Coverity
10151 &quot;Dereference after null check&quot;.</p></li>
</ul>
</blockquote>
<p>2015-03-22  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/meta.c (parse8BIM): Silence Coverity 10159 &quot;Explicit null
dereferenced&quot;.
(parse8BIMW): Silence Coverity 10144 &quot;Explicit null dereferenced&quot;.</p></li>
<li><p>coders/uil.c (WriteUILImage): Silence Coverity 10202
&quot;Dereference after null check&quot;.  In fact, UIL output was not
working at all due to this bug.</p></li>
<li><p>magick/xwindow.c (MagickXMakeImage): Silence Coverity 44727
&quot;Dereference after null check&quot;.</p></li>
<li><p>Magick++/lib/Image.cpp (colorMapSize): Silence Coverity 44728
&quot;Dereference after null check&quot;.</p></li>
<li><p>coders/vid.c (ReadVIDImage): Silence Coverity 44730 &quot;Explicit
null dereferenced&quot;.</p></li>
<li><p>coders/mpc.c (ReadMPCImage): Silence Coverity 44732 &quot;Dereference
after null check&quot;.</p></li>
<li><p>Magick++/lib/Image.cpp (signature): Silence Coverity 44735
&quot;Dereference null return value&quot;.</p></li>
<li><p>coders/ps.c (ReadPSImage): Ghostscript options concatenation
should be more secure against buffer overflow.</p></li>
<li><p>coders/pdf.c (ReadPDFImage): Applied patch by Chris Gilling such
that '-define pdf:stop-on-error=true' will stop PDF processing
immediately upon an error.
(ReadPDFImage): Ghostscript options concatenation should be more
secure against buffer overflow.</p></li>
</ul>
</blockquote>
<p>2015-03-19  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/animate.c (MagickXAnimateImages): Silence Coverity 44736
&quot;Dereference null return value&quot;.  Also fixed apparent memory leak
that Coverity did not notice.</p></li>
<li><p>coders/fits.c (ReadFITSImage): Silence Coverity 10209
&quot;Dereference before null check&quot;.</p></li>
<li><p>magick/color_lookup.c (ReadColorConfigureFile): Silence Coverity
44743 &quot;Dereference before null check&quot;.</p></li>
<li><p>magick/xwindow.c (MagickXMakeImage): Silence Coverity 44745
&quot;Dereference before null check&quot;.</p></li>
<li><p>coders/pict.c (ReadPICTImage): Hopefully address consequences of
Coverity 10292 &quot;Untrusted loop bound&quot; although it will likely
still complain.</p></li>
<li><p>magick/utility.c (LocaleCompare, LocaleNCompare): Try to create
an implementation that Coverity won't label an &quot;tainted sink&quot;, and
therefore result in a Coverity &quot;Use of untrusted scalar value&quot;
report whenever a string from an external source is compared.  The
original implementations are not believed to be faulty.</p></li>
</ul>
</blockquote>
<p>2015-03-17  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/command.c (ProcessBatchOptions): Silence Coverity 10080
&quot;Buffer not null terminated&quot;.</p></li>
<li><p>magick/widget.c (MagickXConfirmWidget): Silence Coverity 10089
&quot;Copy-paste error&quot;.  This is an amazing find by Coverity.</p></li>
<li><p>magick/xwindow.c (MagickXImportImage): Silence Coverity 10207
&quot;Array compared against 0&quot;.</p></li>
<li><p>magick/quantize.c (GrayscalePseudoClassImage): Silence Coverity
10256 &quot;Wrong sizeof argument&quot;.</p></li>
<li><p>coders/tiff.c (ReadTIFFImage): Fix Coverity 44747 and 44748
&quot;Extra sizeof expression&quot;.</p></li>
</ul>
</blockquote>
<p>2015-03-16  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Magick++/lib/Magick++/Include.h (Magick): Fix compilation with
'clang' under Linux.  Build was broken yesterday.</p></li>
<li><p>coders/tiff.c (QuantumTransferMode): Fix reading Old JPEG and
YCbCr sample images from libtiff pics-3.8.0.tar.gz image file
collection.  There was a regression for YCbCr added in last
release.</p></li>
</ul>
</blockquote>
<p>2015-03-15  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/bmp.c (ReadBMPImage): Fix Coverity 44726 &quot;Division or
modulo by float zero&quot;.  I don't think that this can actually
happen due to prior checks.</p></li>
<li><p>magick/xwindow.c (MagickXMakeWindow): Silence Coverity 10281
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>coders/pdf.c (ReadPDFImage): Silence Coverity 10241 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>magick/type.c (ReadTypeConfigureFile): Silence Coverity 10242
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>magick/utility.c (GetPathComponent): Silence Coverity 10263
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>coders/txt.c (ReadTXTImage): Silence Coverity 10287 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>coders/ps.c (WritePSImage): Silence Coverity 10289 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>magick/delegate.c (ReadConfigureFile): Silence Coverity 10297
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>magick/log.c (ReadLogConfigureFile): Silence Coverity 10300
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>coders/ps3.c (WritePS3Image): Silence Coverity 10303 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>coders/pdf.c (WritePDFImage): Silence Coverity 10304 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>coders/ps.c (ReadPSImage): Silence Coverity 10306 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>coders/msl.c (MSLStartElement): Silence Coverity 10308 &quot;Copy
into fixed size buffer&quot;.</p></li>
<li><p>coders/ps2.c (WritePS2Image): Silence Coverity 10309 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>Magick++/lib/Geometry.cpp (operator): Silence Coverity 44749
&quot;Copy into fixed size buffer&quot;.</p></li>
<li><p>Magick++/lib/Image.cpp (annotate): Silence Coverity 44750 &quot;Copy
into fixed size buffer&quot;.</p></li>
<li><p>coders/ept.c (ReadEPTImage): Silence Coverity 44751 &quot;Copy into
fixed size buffer&quot;.</p></li>
<li><p>coders/wmf.c (ipa_device_begin): Silence Coverity 44753 &quot;Copy
into fixed size buffer&quot;.
(lite_font_map): Silence Coverity 44752 &quot;Copy into fixed size
buffer&quot;.</p></li>
<li><p>magick/random.c (InitializeMagickRandomKernel): Silence Coverity
10091 &quot;Don't Call&quot; in the case where /dev/random is available.</p></li>
<li><p>coders/mpeg.c (WriteMPEGParameterFiles): Fix Coverity 10190
&quot;Resource leak&quot;.  File descriptor was leaked under certain error
conditions.</p></li>
<li><p>coders/wpg.c (UnpackWPG2Raster): Fix Coverity 10312
&quot;Uninitialized scalar variable&quot; gripe.</p></li>
<li><p>magick/utility.c (ListFiles): Possibly address
Coverity 10245 &quot;Sizeof not portable&quot; gripe.</p></li>
<li><p>magick/widget.c (MagickXFontBrowserWidget): Possibly address
Coverity 10323 &quot;Sizeof not portable&quot; gripe.</p></li>
<li><p>coders/mat.c (WriteMATLABImage): FormatString() requires a
buffer of MaxTextExtent bytes.  Use sprintf instead.  Fix for
Coverity issue 10170.</p></li>
<li><p>Magick++/lib/Geometry.cpp (string): FormatString() requires a
buffer of MaxTextExtent bytes. Fix for Coverity issue 44737.</p></li>
<li><p>coders/wmf.c (draw_pattern_push): FormatString() requires a
buffer of MaxTextExtent bytes.  Fix for Coverity issue 44741.
(ipa_device_begin): FormatString() requires a buffer of
MaxTextExtent bytes.  Fix for Coverity issue 44740.
(util_set_brush): FormatString() requires a buffer of
MaxTextExtent bytes. Fix for Coverity issue 44739.
(ipa_region_clip): FormatString() requires a buffer of
MaxTextExtent bytes. Fix for Coverity issue 44738.</p></li>
</ul>
</blockquote>
<p>2015-03-15  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (WritePNGImage) Avoid a Coverity gripe about
potential NULL dereference (actually it is impossible because
png_error() does not return. Fix for Coverity gripe 44731.</p></li>
<li><p>coders/png.c (WritePNGImage) Avoid a null pointer dereference
while logging inherited color_type. Fix for Coverity issue 10185.</p></li>
<li><p>coders/png.c (WriteOneJNGImage) Avoid possible unintended sign
extension. Fix for Coverity issue 44744.</p></li>
<li><p>coders/png.c (WriteOnePNGImage) Quiet a false Coverity warning
about dereference after NULL check.  Fix for Coverity issue 44729.</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Redid the &quot;Respect the
PixelsResource limit&quot; patch of March 7, using unsigned arithmetic
to determine the width limit.  Sometimes the calculated
width limit was incorrectly zero.</p></li>
</ul>
</blockquote>
<p>2015-03-14  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/image.c (SetImageInfo): Fix problems with reading
filenames that include a colon.  Resolves SourceForge bug #294
&quot;display and convert (probably other things too) choke on
filenames with colons in&quot;.</p></li>
<li><p>magick/utility.c (GetPathComponent): Fix SubImagePath
extraction. Fixes SourceForge bug #66 &quot;converting runs slowly when
subimage is specified&quot;.</p></li>
</ul>
</blockquote>
<p>2015-03-11  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>doc/options.imdoc (-geometry): Document the significance of 'x'
as used in a geometry specification.  In particular, document that
if width is specified without a trailing 'x' that height is set to
width.  This is in response to SourceForge bug #296 &quot;Strange
-resize WIDTH results with version 1.3.21&quot;.</p></li>
</ul>
</blockquote>
<p>2015-03-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (GlobExpression): Remove use of IsSubimage().</p></li>
<li><p>magick/image.c (IsSubimage): Re-implement with a more robust
solution.  Combined with fixes to ps.c and pdf.c, allows selecting
specific pages, as well as re-ordering.</p></li>
<li><p>coders/ps.c (ReadPSImage): Set image frame scene ids
appropriately.</p></li>
<li><p>coders/pdf.c (ReadPDFImage): Set image frame scene ids
appropriately.</p></li>
<li><p>magick/utility.c (TranslateTextEx): -format %Q should report
JPEG quality estimate if it is available.  Resolves SourceForge
bug #293 &quot;gm identify bug?&quot;.</p></li>
<li><p>doc/options.imdoc: Documented JPEG-specific -format tags.</p></li>
</ul>
</blockquote>
<p>2015-03-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Magick++/lib/Image.cpp (repage): New method to reset page
settings.  Contributed by Dirk Lemstra.</p></li>
</ul>
</blockquote>
<p>2015-03-07  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOnePNGImage): Respect the PixelsResource
limit.</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Moved quantum_scanline
and png_pixels into the MngInfo struct.  This prevents
memory leaks when reading malformed PNG images, but unfortunately
triggers a new complaint about a possible race condition.</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Removed two superflous calls to
CloseBlob().</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Do the allocation and free of
quantum_scanline outside the &quot;pass&quot; loop, i.e., do it once per
image rather than once per pass while decoding interlaced PNG
images.  Log these when -debug coders is enabled.</p></li>
<li><p>coders/png.c: Fixed typo recently introduced in the JNG reader
(status != MagickFalse should be status == MagickFalse).</p></li>
</ul>
</blockquote>
<p>2015-03-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xwd.c (ReadXWDImage): Fix memory leaks in error paths.</p></li>
<li><p>coders/xpm.c (ReadXPMImage): Fix memory leaks in error paths.</p></li>
<li><p>coders/miff.c (ReadMIFFImage): Fix memory leak of Image in error
case.
(ReadMIFFImage): Fix memory leaks of zlib and bzlib2 context in
error path which reports decompression failure.</p></li>
<li><p>coders/bmp.c (ReadBMPImage): BMP reader was wrongly rejecting
RLE-compressed files as being too small.  Fixes SourceForge bug
#295 &quot;1.3.21 identify regression&quot;.  Also fixed 'ping' support code
which was still reading the pixels in 'ping' mode.
(ReadBMPImage): Fix memory leak when BMP is handled as a sequence.</p></li>
</ul>
</blockquote>
<p>2015-03-01  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/palm.c (ReadPALMImage): PALM reader now applies PALM's
special non-linear colormap if the file does not provide a custom
colormap.  Custom colormap size is verified to not exceed image
colors.  Added logging statements regarding colormap.</p></li>
</ul>
</blockquote>
<p>2015-02-28  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>www/index.rst: Update for 1.3.21 release.</p></li>
<li><p>www/Changes.rst: Update for 1.3.21 release.</p></li>
<li><p>NEWS.txt: Update NEWS for 1.3.21 release.</p></li>
<li><p>version.sh: Bump/adjust library versioning.</p></li>
</ul>
</blockquote>
<p>2015-02-25  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/delegate.c: Fix compilation under Cygwin. Thanks to Marco
Atzeri for advising us of this problem.</p></li>
</ul>
</blockquote>
<p>2015-02-24  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/error.h (ThrowReaderException): More significant
exceptions (e.g. errors) should overwrite less significant
exceptions (e.g. warnings) thrown earlier.</p></li>
<li><p>coders/bmp.c (ReadBMPImage): Detect 32-bit integer overflows and
other annoyances caused by intentionally broken files.  Also, only
warn if the file header claims the file is larger than it is since
this is a benign issue.</p></li>
<li><p>magick/blob.c (OpenBlob): Fix &quot;magic header bytes&quot; log message
count value.</p></li>
</ul>
</blockquote>
<p>2015-02-22  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>NEWS.txt: Updated NEWS with more changes.</p></li>
<li><p>Magick++/lib/Magick++/Include.h (Magick): Add GetImageGeometry
to MagickLib namespace in order to avoid a compilation problem
noticed with Visual C++ 6.0.</p></li>
</ul>
</blockquote>
<p>2014-02-22  Jaroslav Fojtik  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>VisualMagickconfigureconfigure.cpp Fixed crash.
Renamed debug to configure_d.exe to prevent mess.</p></li>
</ul>
</blockquote>
<p>2015-02-21  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/magick.c (InitializeMagick): Invoke
NTInitializeExceptionHandlers() under Windows.</p></li>
<li><p>magick/nt_base.c (NTInitializeExceptionHandlers): Add a new
private function which disables pop-up Windows on exceptions and
registers a handler for Windows exceptions to clean up temporary
files prior to program exit.</p></li>
<li><p>magick/magick.c (PanicDestroyMagick): Use
PurgeTemporaryFilesAsyncSafe() rather than PurgeTemporaryFiles().
(InitializeMagickSignalHandlers): Always register for SIGINT, even
under Microsoft Windows.</p></li>
<li><p>magick/tempfile.c (PurgeTemporaryFilesAsyncSafe): New private
function to clean up temporary files prior to program exit.
Async-safe so it can be safely called from a signal handler.
Intentionally leaks memory.</p></li>
</ul>
</blockquote>
<p>2015-02-18  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/attribute.c (GenerateEXIFAttribute): Fix crash while
parsing corrupt EXIF which was reported by Stijn Sanders on
2015-02-17.</p></li>
<li><p>Magick++/lib/{Blob.cpp, Image.cpp}: Incorrect lock scope
resulted in Magick++ locking not actually working to protect
critical sections in spite of no detected problems with locking
these past 16 years.  Problem was detected using the
misc-unused-raii check from clang-tidy and was reported by Hyrum
Wright.</p></li>
<li><p>coders/palm.c (ReadPALMImage): Add header logging to writer.
Writer still seeks and overwrites its own header so logging is not
entirely accurate yet.</p></li>
</ul>
</blockquote>
<p>2015-02-16  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>libtool: Update GNU libtool to 2.4.6.</p></li>
<li><p>coders/palm.c (ReadPALMImage): Fix support for transparency in
PALM reader.</p></li>
</ul>
</blockquote>
<p>2015-02-15  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/palm.c (ReadPALMImage): Major re-work of PALM reader.
More log message improvements.  More header validation.</p></li>
</ul>
</blockquote>
<p>2015-02-14  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/palm.c (ReadPALMImage): Improve log messages.  Add more
header validation.  Check image pixel limits.  Support 'ping'
mode.</p></li>
</ul>
</blockquote>
<p>2015-02-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/palm.c (ReadPALMImage): PALM reader now supports 1, 2, 4,
8, and 16-bit test files we were able to generate using
'pnmtopalm'.  A progress monitor was added.  Memory leaks in error
paths were fixed.</p></li>
</ul>
</blockquote>
<p>2015-02-12  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c: Insert &quot;if (QuantumTick(...))&quot; ahead of
each &quot;if (!MagickMonitorFormatted(...)&quot;.</p></li>
</ul>
</blockquote>
<p>2015-02-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/rla.c (ReadRLAImage): Assure that header ASCII strings
are properly terminated.  Resolves Coverity CID 10322.</p></li>
</ul>
</blockquote>
<p>2015-02-09  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/nt_base.h (STDERR_FILENO): Provide definitions for
standard POSIX file numbers so that Visual Studio should compile.
Fixes SourceForge bug #291 &quot;STDERR_FILENO (used in magick.c) is
not defined under Windows&quot;</p></li>
</ul>
</blockquote>
<p>2015-02-08  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Magick++/lib/Image.cpp (Image::quiet()): Patch by Dirk Lemstra
to support silencing warnings in Magick++.  Adds a quiet() method
which blocks (ignores) warning exceptions when passed a true
argument.  Warning exceptions are still generated by default.</p></li>
<li><p>coders/tiff.c: Support '-define tiff:report-warnings=true' to
enable that warnings reported by libtiff are thrown as warning
exceptions so that they may be caught or will be reported at the
gm command-line.</p></li>
</ul>
</blockquote>
<p>2015-02-07  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (WriteTIFFImage): Use YCbCr encoding when JPEG
compression is requested for an RGB image.</p></li>
</ul>
</blockquote>
<p>2015-02-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/tiff.c (QuantumTransferMode): Fix reading or writing
planar min-is-white or min-is-black images with an associated
alpha channel.</p></li>
</ul>
</blockquote>
<p>2015-02-01  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/xpm.c (ReadXPMImage): Reading empty XPM file should not
cause bad memory access.</p></li>
<li><p>coders/gif.c (DecodeImage): Assure that GIF decoder does not use
unitialized data.</p></li>
<li><p>coders/jpeg.c (ReadJPEGImage): Verify that we support the number
of output components before proceeding to decode the image.</p></li>
</ul>
</blockquote>
<p>2015-01-25  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/miff.c (ReadMIFFImage): MIFF needs to stop spinning if
zlib or bzlib report an error while decompressing.  Solves problem
with file provided by Jodie Cunningham on 2015-01-25.</p></li>
<li><p>coders/vicar.c (ReadVICARImage): Fix Vicar reader's dogged
determination to continue reading when there is nothing left to
read.  Solves problem with file provided by Jodie Cunningham on
2015-01-25.</p></li>
<li><p>magick/magick.c (PanicDestroyMagick): Replace memory allocation
functions with dummy functions rather than NULL pointers.
(InitializeMagickSignalHandlers): Register
MagickPanicSignalHandler() for SIGSEGV.
(MagickPanicSignalHandler): Produce an informative message for the
user.
(MagickSignalHandlerMessage): Include more detailed information
from the signal handler via a common routine used by default
signal handlers.</p></li>
</ul>
</blockquote>
<p>2015-01-25  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/bmp.c (ReadBMPImage): An attempt to address CID 10291.</p></li>
</ul>
</blockquote>
<p>2015-01-25  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/nt_base.c (Exit): Changed to return 'void'. Function can
not return a value if it does not return.</p></li>
<li><p>magick/error.c (DefaultFatalErrorHandler): Invoke
PanicDestroyMagick() rather than DestroyMagick().  If we are
really that short on memory, DestroyMagick() might not work.</p></li>
<li><p>magick/magick.c (MagickPanicSignalHandler): Only use async-safe
functions in signal handler.
(PanicDestroyMagick): New function for emergency release of
persistent resources just prior to program exit.  Async-safe and
does not acquire or release any heap memory.</p></li>
<li><p>magick/export.c: Eliminate two 'clang' warnings.</p></li>
</ul>
</blockquote>
<p>2015-01-24  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/pdb.c (ReadPDBImage): Fix typo.</p></li>
<li><p>coders/cineon.c (ReadCINEONImage): Enforce that Cineon image
info channels is valid.  Solves problem with file provided by
Jodie Cunningham on 2015-01-24</p></li>
<li><p>coders/fits.c (ReadFITSImage): Enforce valid bits-per-pixel
values.  Add detailed header logging.  Solves problem with file
provided by Jodie Cunningham on 2015-01-24</p></li>
</ul>
</blockquote>
<p>2015-01-22  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadPNGImage): Check length of various MNG
chunks before using the chunk data.</p></li>
<li><p>coders/png.c (WriteOnePNGImage): Use png_error() instead of
throwing an exception so cleanup in the setjmp block can happen,
including unlocking the semaphore.  Addresses Coverity CID 10184.</p></li>
</ul>
</blockquote>
<p>2015-01-22  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/gif.c (WriteGIFImage): Don't use an unchecked value from
GetImageAttribute(), even if the access succeeded before.
Resolves Coverity CID 10219.</p></li>
<li><p>coders/dpx.c (StringToAttribute): Make sure that string is not
accidentally shortened by one character if it occupies the full
field size.
(ReadDPXImage): Validate that the bits per sample claimed by the
file header is a supported depth before using it further in the
code.  This might resolve Coverity CID 10071 &quot;Bad shift
operation&quot;.
(ReadDPXImage): Check for EOF while reading forward to element
data.  Might solve Coverity CID 10305.</p></li>
<li><p>coders/dib.c (ReadDIBImage): Resolve Coverity CID 10228 &quot;Integer
overflowed argument&quot;.
(ReadDIBImage): Hopefully resolve Coverity CID 10268 &quot;Various&quot;,
which is primarily about placing too much trust in the claimed
number of colors.</p></li>
<li><p>coders/pnm.c (WritePNMImage): Fix overwrite of status by
progress monitor.  Remaining issues may lurk within.  May resolve
Coverity CID 10288.</p></li>
<li><p>coders/pdb.c: Resolve Coverity CID 11173 &quot;Buffer not null
terminated&quot;.</p></li>
</ul>
</blockquote>
<p>2015-01-21  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/magick.c (GetMagickInfoArray): Resolve Coverity CID 10212
&quot;Missing unlock&quot;.</p></li>
<li><p>magick/colormap.c (ReplaceImageColormap): Allocate new image
colormap up front in order to avoid the possibility that we are
left with an image with no colormap due to memory allocation
failure. If there is a memory allocation failure, then the
original colormap is preserved.  Resolves Coverity CID 10194
&quot;Dereference after null check&quot;.</p></li>
<li><p>magick/utility.c (MagickStripSpacesFromString): New private
utility function to strip spaces from a string.</p></li>
<li><p>magick/color_lookup.c (GetColorInfoArray): Resolves Coverity CID
10231 &quot;Missing unlock&quot;
(ReadColorConfigureFile): Resolves Coverity CID 10261 &quot;Use of
untrusted scalar value&quot;
(GetColorInfo): Resolves Coverity CID 10077 &quot;Overlapping buffer in
memory copy&quot;.</p></li>
</ul>
</blockquote>
<p>2015-01-21  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c (ReadOnePNGImage): Use png_error() instead of
throwing an exception so cleanup in the setjmp block can happen,
including unlocking the semaphore.  Resolves Coverity CID 10232.</p></li>
<li><p>coders/png.c (ReadOnePNGImage): Moved a logging statement into a
block where &quot;attribute&quot; has been checked for NULL.  Resolves
Coverity CIDs 10185 and 10187.</p></li>
<li><p>coders/png.c (ReadMNGImage): Fixed a cut-and-paste typo
(change_delay should be change_timeout) reported by Coverity
CID 10090.</p></li>
</ul>
</blockquote>
<p>2015-01-20  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/image.c (CloneImage): The definition is poor as to what a
non-orphan clone should do.  However, the definition surely does
not include crashing the software or supplanting the original
image in an image list.  Clone image blob and previous/next
pointers but do not supplant original image in list.  Resolves
Coverity CID 10155.</p></li>
</ul>
</blockquote>
<p>2015-01-18  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/dpx.c (WriteRowSamples): Ensure that callback function is
always defined. Resolves Coverity CID 10122.
(ReadRowSamples): Ensure that callback function is always
defined. Resolves Coverity CID 10125.</p></li>
<li><p>magick/random.c (InitializeMagickRandomKernel): Avoid possible
double-close of file.  Resolves Coverity CID 10257.</p></li>
<li><p>coders/histogram.c (WriteHISTOGRAMImage): Avoid possible divide
by zero exception.  Resolves Coverity CID 10107.</p></li>
<li><p>magick/error.c (MagickFatalError): Document that
MagickFatalError() is not supposed to return (program must quit)
and add GCC/Clang hints to that effect.</p></li>
<li><p>magick/bit_stream.c (BitAndMasks): Avoid possible access
one-beyond end of BitAndMasks array.  It is not clear if there is
a possible bug with 32-bit quantums.  If there is a bug, it has
not been noticed via testing.  Resolves Coverity CID 10213.</p></li>
<li><p>magick/tempfile.c (AcquireTemporaryFileDescriptor): Avoid buffer
overrun in the case of an astonishingly long environment variable
string.  Resolves Coverity CID 10267.
(AddTemporaryFileToList): Use strlcpy() rather than strlcpy().  In
practice, should not make a difference.  Will quiet Coverity CID
10321.</p></li>
<li><p>magick/command.c (GMCommandSingle): Don't use the address of a
stack allocation to update argv[0]. Removed updating argv[0] until
a better design can be found.  Resolves Coverity CID 10223.
(GMCommandSingle): Plan B: Use static allocation from
SetClientName() to both store the new command name and provide
storage for argv[0].</p></li>
<li><p>magick/utility.c (SystemCommand): Fix possible overwrite of
memory location due to uninitialized 'end' pointer.  Resolves
Coverity CID 10251.</p></li>
<li><p>magick/blob.c (WriteBlobFile): Was not closing file in certain
error conditions.  Resolves Coverity CID 10237.</p></li>
<li><p>coders/cineon.c (ReadCINEONImage): Don't trust file header so
much.  Resolves Coverity CIDs 10079, 10310, 10325.</p></li>
<li><p>coders/art.c (ReadARTImage): Fix signed vs unsigned comparison
caused by earlier changes.</p></li>
</ul>
</blockquote>
<p>2014-01-17 Fojtik Jaroslav  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/wpg.c Do not execute wpg raster read in ping mode.</p></li>
</ul>
</blockquote>
<p>2014-01-15 Fojtik Jaroslav  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/mat.c Properly deallocating zip structures.</p></li>
</ul>
</blockquote>
<p>2015-01-14  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/sfw.c (ReadSFWImage): Fix pixel cache access errors in
'ping' mode.</p></li>
</ul>
</blockquote>
<p>2015-01-13  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/wmf.c (ReadWMFImage): Fix memory leak in 'ping' mode and
some error paths.</p></li>
</ul>
</blockquote>
<p>2015-01-12  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/jbig.c (ReadJBIGImage): Fix memory leak in 'ping' mode.</p></li>
<li><p>magick/delegate.c (InvokeDelegate): Fix memory leak of argument
list when invoking external program via MagickSpawnVP().</p></li>
</ul>
</blockquote>
<p>2015-01-11  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/resource.c (InitializeMagickResources): Base image width
and height default limits on the range of a 32-bit signed integer,
even for 64-bit builds.  These limits are still beyond what most
computers in the world can handle.  Limits can be increased by the
user.</p></li>
<li><p>coders/xwd.c (ReadXWDImage): Check image size limits
immediately.</p></li>
<li><p>coders/xc.c (ReadXCImage): Check image size limits immediately.</p></li>
<li><p>coders/webp.c (ReadWEBPImage): Check image size limits
immediately.</p></li>
<li><p>coders/viff.c (ReadVIFFImage): Check image size limits
immediately.</p></li>
<li><p>coders/vicar.c (ReadVICARImage): Check image size limits
immediately.</p></li>
<li><p>coders/txt.c (ReadTXTImage): Check image size limits
immediately.</p></li>
<li><p>coders/ttf.c (ReadTTFImage): Check image size limits
immediately.</p></li>
<li><p>coders/tim.c (ReadTIMImage): Check image size limits
immediately.</p></li>
<li><p>coders/tiff.c (ReadTIFFImage): Check image size limits
immediately.</p></li>
<li><p>coders/tga.c (ReadTGAImage): Check image size limits
immediately.</p></li>
<li><p>coders/sgi.c (ReadSGIImage): Check image size limits
immediately.</p></li>
<li><p>coders/sct.c (ReadSCTImage): Check image size limits
immediately.</p></li>
<li><p>coders/rle.c (ReadRLEImage): Check image size limits
immediately.</p></li>
<li><p>coders/rla.c (ReadRLAImage): Check image size limits
immediately.</p></li>
<li><p>coders/psd.c (ReadPSDImage): Check image size limits
immediately.</p></li>
<li><p>coders/pnm.c (ReadPNMImage): Check image size limits
immediately.</p></li>
<li><p>coders/pix.c (ReadPIXImage): Check image size limits
immediately.</p></li>
<li><p>coders/pict.c (ReadPICTImage): Check image size limits
immediately.</p></li>
<li><p>coders/pdb.c (ReadPDBImage): Check image size limits
immediately.</p></li>
<li><p>coders/pcx.c (ReadPCXImage): Check image size limits
immediately.</p></li>
<li><p>coders/pcd.c (ReadPCDImage): Check image size limits
immediately.</p></li>
<li><p>coders/otb.c (ReadOTBImage): Check image size limits
immediately.</p></li>
<li><p>coders/null.c (ReadNULLImage): Check image size limits
immediately.</p></li>
<li><p>coders/mvg.c (ReadMVGImage): Check image size limits
immediately.</p></li>
<li><p>coders/mtv.c (ReadMTVImage): Check image size limits
immediately.</p></li>
<li><p>coders/mpc.c (ReadMPCImage): Check image size limits
immediately.</p></li>
<li><p>coders/miff.c (ReadMIFFImage): Check image size limits
immediately.</p></li>
<li><p>coders/jpeg.c (ReadJPEGImage): Check image size limits
immediately.</p></li>
<li><p>coders/jp2.c (ReadJP2Image): Check image size limits
immediately.</p></li>
<li><p>coders/jbig.c (ReadJBIGImage): Check image size limits
immediately.</p></li>
<li><p>coders/hdf.c (ReadHDFImage): Check image size limits
immediately.</p></li>
<li><p>coders/gif.c (ReadGIFImage): Check image size limits
immediately.</p></li>
<li><p>coders/fpx.c (ReadFPXImage): Check image size limits
immediately.</p></li>
<li><p>coders/fax.c (ReadFAXImage): Check image size limits
immediately.</p></li>
<li><p>coders/dpx.c (ReadDPXImage): Check image size limits
immediately.</p></li>
<li><p>coders/dps.c (ReadDPSImage): Check image size limits
immediately.</p></li>
<li><p>coders/dib.c (ReadDIBImage): Check image size limits
immediately.</p></li>
<li><p>coders/dcm.c (ReadDCMImage): Check image size limits
immediately.</p></li>
<li><p>coders/cut.c (ReadCUTImage): Check image size limits
immediately.</p></li>
<li><p>coders/cineon.c (ReadCINEONImage): Check image size limits
immediately.</p></li>
<li><p>coders/avs.c (ReadAVSImage): Check image size limits
immediately.</p></li>
<li><p>coders/art.c (ReadARTImage): Check image size limits
immediately.</p></li>
<li><p>coders/sun.c (ReadSUNImage): Check image size limits in advance
of allocating memory for pixels.</p></li>
<li><p>coders/bmp.c (ReadBMPImage): Check image size limits in advance
of allocating memory for pixels.</p></li>
<li><p>coders/sun.c (ReadSUNImage): There is no definition for Sun map
type RMT_RAW so it can not be supported.  Update DirectClass
pixels directly rather using SyncImage().  Problem was reported by
Jodie Cunningham.</p></li>
</ul>
</blockquote>
<p>2015-01-10  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/pict.c (ReadPICTImage): Fix PICT reader crash when
reading corrupted file.</p></li>
<li><p>coders/sun.c (ReadSUNImage): Sun reader was still not as robust
as it should be.  Now it is.</p></li>
</ul>
</blockquote>
<p>2014-01-10 Fojtik Jaroslav  &lt;<a class="reference external" href="mailto:JaFojtik&#37;&#52;&#48;seznam&#46;cz">JaFojtik<span>&#64;</span>seznam<span>&#46;</span>cz</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/wpg.c Fixed reading behind EOF issue.</p></li>
</ul>
</blockquote>
<p>2015-01-09  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/dpx.c (LSBPackedU32WordToOctets): Fix typo which adds
severe corruption to encoded little-endian 32-bit packed output.
The good news is that since the corruption is severe, it is easily
visually detected.  The problem has corrupted all such
(little-endian 10-bit) output since it was originally implemented
on 2007-06-17 (changeset 11686, first released in GraphicsMagick
1.1.8).  GraphicsMagick preserves the endianness of input DPX
files by default, defaults to big-endian, and DPX files are
commonly big-endian, so this problem may not have occured for many
usages.  Problem was reported by Steve Dabner on the
GraphicsMagick discussion mailing list.</p></li>
</ul>
</blockquote>
<p>2015-01-05  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/magick.c (MagickPanicSignalHandler): Print a message in
the case of signals SIGXCPU and SIGXFSZ.</p></li>
<li><p>coders/bmp.c (ReadBMPImage): Don't hang in endless loop if EOF
is encountered while checking for &quot;BA&quot; header.</p></li>
<li><p>coders/icon.c (ReadIconImage): Limit icon image allocation size.</p></li>
</ul>
</blockquote>
<p>2015-01-04  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/icon.c (ReadIconImage): Removed all of the
previously-existing DIB reading code from icon.c and use new
&quot;ICODIB&quot; reader to read DIB icons, or the PNG reader to read PNG
icons.</p></li>
<li><p>coders/dib.c (ReadDIBImage): Added an &quot;ICODIB&quot; coder for
internal use which reads a Windows BMP 3 DIB followed by a Windows
ICO alpha mask.  This allows existing DIB code to be used to read
ICO directory entries.</p></li>
</ul>
</blockquote>
<p>2015-01-03  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/icon.c: The Windows ICO reader is now more robust.  Still
a work in progress since some files still can not be read or read
incorrectly.</p></li>
</ul>
</blockquote>
<p>2015-01-01  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/resource.c (ListMagickResourceInfo): &quot;kilo&quot; for binary
prefixes is supposed to be &quot;Ki&quot;.</p></li>
<li><p>magick/utility.c (FormatSize): &quot;kilo&quot; for binary prefixes is
supposed to be &quot;Ki&quot;.</p></li>
</ul>
</blockquote>
<p>2015-01-01  Glenn Randers-Pehrson  &lt;<a class="reference external" href="mailto:glennrp&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">glennrp<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>coders/png.c: Use WidthResource and HeightResource instead
of fixed 1-million limit for rows and columns.</p></li>
</ul>
</blockquote>
<p>2015-01-01  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>magick/utility.c (FormatSize): Add 'i' to value range
identifiers since these are all in units of 2^10 rather than 1000.</p></li>
<li><p>magick/pixel_cache.c (CheckImagePixelLimits): Fix typo and
produce an informative error message.</p></li>
<li><p>magick/resource.c: Added support for Image width and height
pixels resource limits.</p></li>
<li><p>magick/resource.h (ResourceType): New resource enumerations
WidthResource and HeightResource.</p></li>
<li><p>magick/enum_strings.c (StringToResourceType): Added support for
parsing '-limit Width' and '-limit Height'.</p></li>
<li><p>magick/pixel_cache.c (CheckImagePixelLimits): New function to
test image to see if it exceeds pixels limits.</p></li>
<li><p>coders/viff.c (ReadVIFFImage): Make the VIFF reader robust with
detecting and reporting problems.</p></li>
</ul>
</blockquote>
<p>2014-12-31  Bob Friesenhahn  &lt;<a class="reference external" href="mailto:bfriesen&#37;&#52;&#48;simple&#46;dallas&#46;tx&#46;us">bfriesen<span>&#64;</span>simple<span>&#46;</span>dallas<span>&#46;</span>tx<span>&#46;</span>us</a>&gt;</p>
<blockquote>
<ul class="simple">
<li><p>Rotate Changelog for new year.  Update documentation copyrights
for new year.</p></li>
</ul>
</blockquote>
</main>


<hr class="docutils">
<div class="document">
    <p><a href="Copyright.html">Copyright</a> © GraphicsMagick Group 2002-2025<!--SPONSOR_LOGO--></p>
</div>

</main>
</body>
</html>
